The present invention relates to an image processing apparatus, an image processing method, and a computer-readable storage medium, particularly to the image processing apparatus, image processing method and computer-readable storage medium for enabling efficient parallel processing.
Conventionally, in a multi-core system used in audio and visual applications including a plurality of processors for performing image processing and sound processing, processing efficiency is enhanced by pipeline processing of using a plurality of processors to which processing contents are previously allocated. However, with recent diversification of a method for processing medium dealt with, the processing efficiency is lowered rather than enhanced when the processing contents are previously allocated to the plurality of processors.
On the other hand, in an image processing apparatus disclosed in Japanese Patent Application Laid-Open No. 2005-189975, the plurality of processors do not perform the previously-allocated processing, but selectively perform the processing to segments (image data divided into predetermined sizes) in the order registered in a process queue. After performing processing to one segment, the processor of the image processing apparatus disclosed in Japanese Patent Application Laid-Open No. 2005-189975 can perform processing to another segment to which another processor already performs processing. This enables the processing efficiency to be enhanced compared with the pipeline processing. However, because the processor of the Japanese Patent Application Laid-Open No. 2005-189975 performs the processing according to the order registered in the process queue, the processor cannot perform the processing registered in the process queue until another processing is completed in the case where a dependency relationship exists between a plurality of processings registered in the process queue and another processing. Therefore, there is a problem in that parallelism of the plural processors cannot efficiently be utilized.
Thus, in the conventional image processing apparatus, not only the plurality of processors cannot efficiently be operated to perform the image processing, but also the parallelism of the plurality of processors cannot efficiently be utilized.